/*
 * Copyright (c) 2006-2021, RT-Thread Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2021-10-20     Administrator       the first version
 */
#ifndef APPLICATIONS_MOTOR_H_
#define APPLICATIONS_MOTOR_H_

/**
 * @简  述  由坐标XYZ速度解析为电机转速
 * @参  数  vx，vy，vz  三轴坐标速度
 * @返回值  全局变量，每个轮子PWM速度
 */
//void AX_MOVE_Kinematics(rt_uint32_t pulse)
//{
//
//    if (my_joystick.mode != 0x41)
//    {
//        ax_motor_pwm[0] = 0; //A
//        ax_motor_pwm[1] = 0; //B
//        ax_motor_pwm[2] = 0; //C
//        ax_motor_pwm[3] = 0; //D
//        return;
//
//    }
//    if (my_joystick.btn1 == 0x7f) //左自旋转
//    {
//        ax_motor_pwm[0] = -(pulse+20000); //A
//        ax_motor_pwm[1] = pulse+20000;  //B
//        ax_motor_pwm[2] = -pulse; //C
//        ax_motor_pwm[3] = pulse;  //D
//    }
//    else if (my_joystick.btn1 == 0xdf)  //右自旋转
//    {
//        ax_motor_pwm[0] = pulse+20000;  //A
//        ax_motor_pwm[1] = -(pulse+20000); //B
//        ax_motor_pwm[2] = pulse;  //C
//        ax_motor_pwm[3] = -pulse; //D
//    }
//
//    else if (my_joystick.btn1 == 0xef) //左横走
//    {
//        ax_motor_pwm[0] = pulse+20000; //A
//        ax_motor_pwm[1] = -(pulse+20000); //B
//        ax_motor_pwm[2] = -pulse; //C
//        ax_motor_pwm[3] = pulse; //D
//    }
//    else if (my_joystick.btn1 == 0xbf) //右横走
//    {
//        ax_motor_pwm[0] =  -(pulse+20000); //A
//        ax_motor_pwm[1] = pulse+20000; //B
//        ax_motor_pwm[2] = pulse; //C
//        ax_motor_pwm[3] = -pulse; //D
//    }
//    else if (my_joystick.btn2 == 0x7f) //左转
//    {
//        ax_motor_pwm[0] = pulse; //A
//        ax_motor_pwm[1] = pulse + 50000; //B
//        ax_motor_pwm[2] = pulse; //C
//        ax_motor_pwm[3] = pulse + 50000; //D
//    }
//
//    else if (my_joystick.btn2 == 0xdf) //右转
//    {
//        ax_motor_pwm[0] = pulse + 100000; //A
//        ax_motor_pwm[1] = pulse; //B
//        ax_motor_pwm[2] = pulse + 100000; //C
//        ax_motor_pwm[3] = pulse; //D
//    }
//    else if (my_joystick.btn2 == 0xef) //前进
//    {
//        ax_motor_pwm[0] = pulse; //A
//        ax_motor_pwm[1] = pulse; //B
//        ax_motor_pwm[2] = pulse; //C
//        ax_motor_pwm[3] = pulse; //D
//    }
//    else if (my_joystick.btn2 == 0xbf) //后退
//    {
//        ax_motor_pwm[0] = -pulse; //A
//        ax_motor_pwm[1] = -pulse; //B
//        ax_motor_pwm[2] = -pulse; //C
//        ax_motor_pwm[3] = -pulse; //D
//    }
//    else
//    {
//        if (my_joystick.btn2 == 0xfb || my_joystick.btn2 == 0xfe) //加速
//        {
//            pulset += 2000;
//            return;
//        }
//        else if (my_joystick.btn2 == 0xf7 || my_joystick.btn2 == 0xfd) //减速
//        {
//            pulset -= 2000;
//            return;
//        }
//        ax_motor_pwm[0] = 0; //A
//        ax_motor_pwm[1] = 0; //B
//        ax_motor_pwm[2] = 0; //C
//        ax_motor_pwm[3] = 0; //D
//    }
//    rt_memset(&my_joystick,0,sizeof(my_joystick));
//}

#endif /* APPLICATIONS_MOTOR_H_ */
